{
  "extends": [
    "airbnb",
    "prettier",
    "plugin:node/recommended",
    "next/core-web-vitals"
  ],
  "parser": "@typescript-eslint/parser",
  "plugins": ["prettier"],
  "env": {
    "es6": true
  },
  "overrides": [
    {
      "files": ["*.ts", "*.tsx"],
      "parserOptions": {
        "project": ["./tsconfig.json"]
      }
    }
  ],
  "rules": {
    "prettier/prettier": "error",
    "node/no-missing-import": "off",
    "no-unused-vars": "warn",
    "no-console": "off",
    "func-names": "off",
    "no-process-exit": "off",
    "object-shorthand": "off",
    "class-methods-use-this": "off",
    "default-param-last": "off",
    "react/jsx-props-no-spreading": "off",
    "no-restricted-globals": "off",
    "no-underscore-dangle": "off",
    "react/function-component-definition": [
      "error",
      {
        "namedComponents": ["function-declaration", "arrow-function"],
        "unnamedComponents": "arrow-function"
      }
    ],
    "react/jsx-filename-extension": [
      "off",
      {
        "extensions": [".js", ".jsx"]
      }
    ],
    "import/no-extraneous-dependencies": [
      "error",
      {
        "devDependencies": true
      }
    ],
    "node/no-unsupported-features/es-syntax": [
      "error",
      {
        "version": ">=13.0.0",
        "ignores": ["modules"]
      }
    ]
  }
}
